Transmission apparatus and transmission method

ABSTRACT

A transmission apparatus for transmitting content data to a receiving apparatus includes an establishing unit configured to establish a state where the content data can be transmitted to the receiving apparatus, a reception unit configured to receive a transmission request of the content data from the receiving apparatus in the established state where the content data can be transmitted, and a control unit configured to perform control such that, while a number of transmissions of the content data is equal to or greater than a predetermined number, the control unit does not transmit the content data to the receiving apparatus having issued the transmission request but keeps the state where the content data can be transmitted to the receiving apparatus and, when the number of transmissions of the content data becomes less than the predetermined number, the control unit permits the content data to be transmitted to the receiving apparatus.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a transmission apparatus and atransmission method, and more specifically, to a technology capable oftransmitting data more equally and efficiently in a case where thenumber of data distributions is limited.

2. Description of the Related Art

Recently, there has been utilized a technology in which multimedia datasuch as video and audio is streamed via an IP network in order to viewthe video and listen to the audio. More specifically, when distributingthe multimedia data that requires real-time distribution, e.g., livevideo, a communication protocol, which is referred to as Real-timeTransport Protocol (RTP), is generally used.

RTP is a protocol for transferring data, e.g., mainly audio and video,in real time and is defined as RFC3550 by Internet Engineering TaskForce (IETF). RTP is an upper protocol of User Datagram Protocol (UDP),which is a non-connection type protocol. In a case where video or audiodata is packetized by using RTP for communication, the RTP packet thatstreams through a network is generally referred to as stream data or amedia stream.

Generally, Real Time Streaming Protocol (RTSP) is used as a protocol forcontrolling a communication session such as a start and an end of amedia stream by using RTP. RTSP is defined as RFC 2326 by IETF. JapanesePatent Application Laid-open No. 2011-211390 discusses a technology forcontrolling a session by using RTSP and Session Initiation Protocol(SIP).

A server that conducts session control by using RTSP may sometimes limitthe number of sessions connectable at a time. The number of sessionsconnectable at a time is limited because of, for example, an issue of aresource of the server which distributes stream data and an issue of acommunication band of a network. In a case where the number of sessionsby RTSP is limited by the server, a client's connection request, whichis made after the number of sessions reaches the limit, is rejected bythe server. In other words, a mechanism like a reservation system for aconnection request is not present in communication control according toRTSP. Therefore, in an environment where the number of sessions islimited, a client who can access the server is generally determined on afirst-come-first-served basis.

Generally, at a point of time when the client's connection request isrejected by the server, a session by RTSP between the server and theclient who made the rejected request is to be disconnected. Therefore,the client cannot know the subsequent state of the server. Under thecircumstance, however, if the number of sessions by RTSP falls below theupper limit number because of any change of the situation, the clientwho desires to establish a connection by RTSP can access the server ifthe client makes the connection request at that timing.

However, a client not actually in connection with the server cannot knowthe state of the server in real time. Therefore, in order to confirmwhether the client can connect to the server, in some cases, the clientmay waste time in attempting to connect to the server many times or maymiss a right timing to connect to the server.

SUMMARY OF THE INVENTION

The present invention is directed to a transmission apparatus thatavoids attempting a useless connection to improve equality indistributing stream data.

According to an aspect of the present invention, a transmissionapparatus for transmitting content data to a receiving apparatus via anetwork includes an establishing unit configured to establish a statewhere the content data is able to be transmitted to the receivingapparatus via the network, a reception unit configured to receive atransmission request of the content data from the receiving apparatus inthe established state where the content data is able to be transmittedto the receiving apparatus, and a control unit configured to performcontrol such that, while a number of transmissions of the content databeing transmitted is equal to or greater than a predetermined number,the control unit does not transmit the content data to the receivingapparatus having issued the transmission request but keeps the statewhere the content data is able to be transmitted to the receivingapparatus and, when the number of transmissions of the content databecomes less than the predetermined number, the control unit permits thecontent data to be transmitted to the receiving apparatus having issuedthe transmission request.

Further features and aspects of the present invention will becomeapparent from the following detailed description of exemplaryembodiments with reference to the attached drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and constitute apart of the specification, illustrate exemplary embodiments, features,and aspects of the invention and, together with the description, serveto explain the principles of the invention.

FIG. 1 is a block diagram illustrating an example of a configuration ofa transmission apparatus according to a first exemplary embodiment ofthe present invention.

FIG. 2 is a flow chart illustrating an example of a content ofprocessing performed when a distribution request is received accordingto the first exemplary embodiment.

FIG. 3 is a flow chart illustrating an example of a content ofprocessing performed when a new distribution becomes available accordingto the first exemplary embodiment.

FIG. 4 illustrates an example of content distribution processingaccording to the first exemplary embodiment.

FIG. 5 illustrates an example in a case where RTP and RTSP are used asprotocols according to the first exemplary embodiment.

FIG. 6 illustrates another example in a case where RTP and RTSP are usedas protocols according to the first exemplary embodiment.

FIG. 7 illustrates an example in a case where video and audio aredistributed according to a second exemplary embodiment of the presentinvention.

FIG. 8 illustrates an example with a receiving apparatus capable ofreceiving content data in a plurality of video coding formats accordingto the second exemplary embodiment.

FIG. 9 illustrates another example with a receiving apparatus capable ofreceiving a plurality of video coding formats according to the secondexemplary embodiment.

DESCRIPTION OF THE EMBODIMENTS

Various exemplary embodiments, features, and aspects of the inventionwill be described in detail below with reference to the drawings.

A configuration of a computer apparatus constituting a transmissionapparatus according to the present exemplary embodiment of the presentinvention is described below with reference to a block diagram inFIG. 1. The transmission apparatus and a receiving apparatus may berealized with an independent single computer or may be realized with aplurality of computer apparatuses having different functions sharedtherebetween as required. In a case where the transmission apparatus andthe receiving apparatus includes the plurality of computer apparatuses,the plurality of computer apparatuses are connected to each other via alocal area network (LAN) so as to be able to communicate with eachother.

In FIG. 1, a transmission apparatus 100 includes a data packetgenerating unit 101, a communication control unit 102, a distributionpermission/rejection determination unit 103, a distribution request datastorage unit 104, and a packet transmitting/receiving unit 105.

In a case where the data packet generating unit 101 establishescommunication by using, for example, a RTP protocol, encoded data ofvideo and audio input from an external device is divided into a sizeoptimum for communication. Further, a header necessary for thecommunication is added to the divided encoded data to packetize thedata, thereby generating a data packet in RTP.

The communication control unit 102 performs control for permitting orrejecting a new connection with a receiving apparatus according to aninstruction from the distribution permission/rejection determinationunit 103.

The distribution permission/rejection determination unit 103 manages,for example, the number of receiving apparatuses to which thetransmission apparatus 100 can distribute the data packet at a time.When the distribution permission/rejection determination unit 103receives a new data distribution request from the receiving apparatus,the distribution permission/rejection determination unit 103 determineswhether to permit/reject the data distribution to the receivingapparatus.

In a case where the distribution permission/rejection determination unit103 rejects the distribution request, the distribution request datastorage unit 104 temporary stores information of thus rejecteddistribution request.

The packet transmitting/receiving unit 105 transmits the data packetgenerated by the data packet generating unit 101 to the receivingapparatus according to a determination result of the distributionpermission/rejection determination unit 103. The packettransmitting/receiving unit 105 receives a transmission request(hereinafter referred to as “distribution request”) of content dataconstituting the content from the receiving apparatus for which aconnection is permitted by the communication control unit 102.

A distribution control conducted by the transmission apparatus 100 ofthe present exemplary embodiment is described below in detail withreference to FIGS. 2 and 3. FIGS. 2 and 3 are flow charts eachillustrating an example of the distribution control conducted by thetransmission apparatus 100 according to the present exemplaryembodiment. FIG. 2 illustrates an example of a processing operation whenthe distribution request is received from the receiving apparatus. FIG.3 illustrates an example of a processing operation in a case where a newdistribution becomes available after the processing in FIG. 2.

In step S201, as illustrated in FIG. 2, the transmission apparatus 100receives the distribution request from the receiving apparatus. In stepS202, the distribution permission/rejection determination unit 103determines whether the number of distributions reaches an upper limit.As a result of the determination of step S202, in a case where thenumber of distributions does not reach the upper limit (NO in stepS202), the processing proceeds to step S205 where the distributionpermission/rejection determination unit 103 permits the distribution andthe communication control unit 102 performs distribution processingbased on the distribution permission.

On the other hand, as a result of the determination of step S202, in acase where the number of distributions reaches the upper limit (YES instep S202), the processing proceeds to step S203 where the distributionpermission/rejection determination unit 103 determines to reject thedistribution and notifies the receiving apparatus of the rejection ofthe distribution request. In the present exemplary embodiment, thereceiving apparatus of which distribution request has been rejected fromthe transmission apparatus 100 is to be a state of waiting forpermission of the distribution request.

In step S204, the distribution permission/rejection determination unit103 stores information of the rejected distribution request in thedistribution request data storage unit 104 as distribution request data.The distribution request data contains, for example, an internetprotocol (IP) address of the receiving apparatus which issued thedistribution request and information of the requested content.

A processing operation performed after the distribution is rejected inthe flow chart illustrated in FIG. 2 is described below with referenceto FIG. 3. In step S301, the distribution permission/rejectiondetermination unit 103 refers to the distribution request data storageunit 104 to determine whether there is a receiving apparatus waiting fordistribution. In a case where there is the receiving apparatus waitingfor distribution (YES in step S301), the processing proceeds to stepS302. In a case where there is no receiving apparatus waiting fordistribution (NO in step S301), the processing is ended.

In step S302, distribution permission/rejection determination unit 103waits until a new distribution becomes available and, in a case wherethe new distribution becomes available because of a decrease of thenumber of distributions (YES in step S302), the processing proceeds tostep S303. In step S303, the distribution permission/rejectiondetermination unit 103 determines whether there is a plurality ofreceiving apparatuses waiting for distribution with reference to thedistribution request data. As a result of the determination, in a casewhere there is a plurality of receiving apparatuses waiting fordistribution (YES in step S303), the processing proceeds to step S304.In a case where there is not the plurality of receiving apparatuswaiting for distribution (NO in step S303), the processing proceeds tostep S305. In step S304, priority of distribution to the plurality ofreceiving apparatuses is calculated.

In step S305, based on the distribution priority, the communicationcontrol unit 102 provides a notification for permitting the distributionto the receiving apparatus waiting for distribution. The receivingapparatus which has received the notification for permitting thedistribution issues a distribution request again to the transmissionapparatus 100 to receive the content.

An example of a flow of processing described with reference to FIGS. 2and 3 is described below with reference to FIG. 4. FIG. 4 illustrates anexample of processing in a case where the maximum number ofdistributions of content is 3 and the number of receiving apparatuses is5. In FIG. 4, each of the receiving apparatuses 1 through 5 sequentiallyissues a distribution request to the transmission apparatus 100.However, since the maximum number of distributions is 3, thedistribution requests from the receiving apparatuses 4 and 5 arerejected and, at a timing A, content distributions to the receivingapparatuses 1 through 3 are performed.

When the receiving apparatus 2 which has been receiving the contentrequests the disconnection of a session, the transmission apparatus 100disconnects the session to stop the content distribution to thereceiving apparatus 2, and at the same time, the transmission apparatus100 provides the receiving apparatus 4 of which distribution request hasbeen rejected with a notification of distribution permission. Thereceiving apparatus 4 which has received the notification issues adistribution request again to the transmission apparatus 100 to receivethe content.

At the timing B in FIG. 4, instead of the receiving apparatus 2 to whichthe distribution has been stopped, the receiving apparatus 4 receivesthe content. Processing between the timing B and a timing C, as similarto the processing between the timing A and the timing B, the receivingapparatus 5 receives the content instead of the receiving apparatus 1which was receiving the content. In the example in FIG. 4, provided thatthere is no difference of priority between the receiving apparatus 4 andthe receiving apparatus 5 which are in a state of waiting fordistribution at the timing A, the transmission apparatus 100 simplyprovides, based on a first-come-first-served basis, the receivingapparatus 4 which issued the distribution request earlier than thereceiving apparatus 5 with the notification of the distributionpermission.

An example of a case where RTP and RTSP protocols are used is describedwith reference to FIGS. 5 and 6. FIG. 5 is a first example of a casewhere RTP and RTSP are used. In FIG. 5, for the sake of an easyunderstanding of a flow of the control, the number of receivingapparatuses waiting for receiving the content from the transmissionapparatus 100 at one time is to be 1.

The RTSP is a protocol for controlling a transmission of the contentsuch as a start and an end of the media stream. The method forconducting the control of the communication session is not limited tothe method in which the RTSP is used. In FIG. 5, the receiving apparatus1 generates a session of the RTSP according to a DESCRIBE method and aSETUP method with the RTSP. Subsequently, a content distribution fromthe transmission apparatus 100 is started according to a PLAY method,i.e., a distribution of the RTP stream. At the time, the transmissionapparatus 100 which receives a request for session information accordingto the DESCRIBE method with the RTSP from the other receiving apparatus2 returns an error notification to the receiving apparatus 2 (asindicated by “406 Not Acceptable” in the example in FIG. 5) since thetransmission apparatus 100 cannot distribute the content to tworeceiving apparatuses at the same time.

The receiving apparatus 2 after receiving the error notification fromthe transmission apparatus 100 is put into a state of waiting for thedistribution permission from the transmission apparatus 100. Therefore,a connection of the RTSP is maintained. Then, in a case where thereceiving apparatus 1 issues a request to stop the content distributionaccording to, for example, a TEARDOWN method with the RTSP, thetransmission apparatus 100 immediately stops the content distribution tothe receiving apparatus 1. Subsequently, the transmission apparatus 100notifies the receiving apparatus 2 of the content distributionpermission distribution.

In a case where the distribution permission notification is transmittedby using the RTSP, since the RFC2326 which defines the RTSP does notinclude any applicable method, an ANNOUNCE, an OPTIONS, a REDIRECT, orthe like is used as a method available from a side of the transmissionapparatus 100 to a side of the receiving apparatus. The receivingapparatus 2 which has received the distribution permission notificationuses the methods from the DESCRIBE to the PLAY to start the contentdistribution.

The distribution permission notification may be provided to thereceiving apparatus 2 by any method, so that it is not essential to usethe RTSP method here. A method for providing the distribution permissionnotification other than the RTSP method may be a method in which acommunication port by which the receiving apparatus receives thedistribution permission notification is prepared and the transmissionapparatus 100 transmits the distribution permission notification to theport. In addition to the above method, a method in which information tothe effect that the transmission apparatus 100 can perform the contentdistribution is written into a file, which can be referred to by both ofthe transmission apparatus 100 and the receiving apparatus, can alsoproduce an effect of the present exemplary embodiment.

Another example using the protocols of RTP and RTSP is described belowwith reference to FIG. 6. FIG. 6 illustrates a second example of a casewhere RTP and RTSP protocols are used. For the sake of easyunderstanding of the flow of the control, as similar to the case in FIG.5, the number of the receiving apparatuses waiting for receiving thecontent from the transmission apparatus 100 at the same time is limitedto 1, also in FIG. 6.

In FIG. 6, processing performed until the receiving apparatus 1 receivesthe content is similar to that in FIG. 5.

Different from the case in FIG. 5, the transmission apparatus 100 doesnot return the error notification to the receiving apparatus 1 when thetransmission apparatus 100 receives the distribution request accordingto the RTSP method from the receiving apparatus 2 during the contentdistribution to the receiving apparatus 1.

However, in FIG. 6, the content distribution to the receiving apparatus2 is actually started after the distribution to the receiving apparatus1 is stopped. In the case in FIG. 6, the distribution permissionnotification may be provided to the receiving apparatus 2 or may beomitted.

In the present exemplary embodiment, the receiving apparatus in whichthe content distribution is once rejected needs to wait for thedistribution permission notification from the transmission apparatus100. The waiting time thereof can be designated. In a case where thewaiting time is set, the transmission apparatus 100 provides thedistribution permission notification, only when the content distributionbecomes newly available within the set period of time, to the receivingapparatus sequentially in the order of priority. The priority order canbe stored in, for example, the distribution request data storage unit104. The waiting time may be designated from the receiving apparatus ormay be designated from the transmission apparatus 100. In a case where,after providing the distribution permission notification to thereceiving apparatus, any reaction is not received from the receivingapparatus for a certain period of time (e.g., in a case where thetransmission request of the content data is not received from thereceiving apparatus), the transmission apparatus 100 may provide thedistribution permission notification to the other receiving apparatus.

As described above, the transmission apparatus 100 performs control suchthat, while the number of transmissions of content data beingtransmitted is equal to or greater than a predetermined number, when thenumber of transmissions of the content data becomes less than thepredetermined number within a predetermined period of time afterreceiving the transmission request, the transmission apparatus 100permits the content data to be transmitted to the receiving apparatuswhich has issued the transmission request. The transmission apparatus100 further performs control such that, while the number oftransmissions of the content data being transmitted is equal to orgreater than the predetermined number, when the number of transmissionsof the content data does not become less than the predetermined numberwithin the predetermined period of time after receiving the transmissionrequest, the transmission apparatus 100 does not transmit the contentdata to the receiving apparatus which has issued the transmissionrequest.

Furthermore, the transmission apparatus 100 performs control such that,while the number of transmissions of the content data being transmittedis equal to or greater than the predetermined number, if a plurality ofreceiving apparatuses issues transmission requests, the transmissionapparatus 100 permits the content data to be transmitted to theplurality of receiving apparatus sequentially in the order of prioritywhen the number of transmissions of the content data becomes less thanthe predetermined number.

The distribution permission/rejection determination unit 103 of thetransmission apparatus 100 determines permission/rejection of the datadistribution based on a communication band and a bit rate of therequested media. The communication band can be measured by, for example,a packet loss rate and a round trip time. The distributionpermission/rejection determination unit 103 can determine apredetermined number that the transmission apparatus 100 can distributethe content (i.e., an upper limit of the number of distributions)according to at least one of the communication band and the bit rate ofmedia. The distribution permission/rejection determination unit 103determines the permission/rejection of the data distribution based onthe predetermined number.

A second exemplary embodiment of the present invention is describedmainly about a difference from the first exemplary embodiment. In theabove described first exemplary embodiment, a case where one type of themedia contained in the content to be distributed is one is described.

In the present exemplary embodiment, a case where a plurality of mediais contained in the content is described. FIG. 7 illustrates an exampleof a flow of a control in a case where two kinds of media such as videoand audio are contained in the distributable content.

In FIG. 7, each of two media such as video and audio can be distributedup to two sessions. The transmission apparatus 100 firstly startsdistribution of the both media of video and audio in response to thedistribution requests of video and audio from the receiving apparatus 1.

Secondary, the transmission apparatus 100 starts distribution of videoin response to the distribution request of video from the receivingapparatus 2. In a case where the distribution requests of video andaudio are received from the receiving apparatus 3, since video hasalready been distributed to two sessions, i.e., to the receivingapparatus 1 and the receiving apparatus 2, the transmission apparatus100 starts distribution of audio only, which is distributable at thetime.

In a case where the receiving apparatus 1 requests for disconnection ofthe session, the transmission apparatus 100 stops distribution of videoand audio to the receiving apparatus 1. Accordingly, a videodistribution newly becomes available, and the video distribution to thereceiving apparatus 3 which was once rejected can be started.

In a case where transmission requests of first content data (e.g.,video) constituting the content and second content data (e.g., audio)constituting the content are received, the transmission apparatus 100can conduct the following control.

While the number of transmissions of first content data beingtransmitted is equal to or greater than a first predetermined number,the transmission apparatus 100 does not transmit the first content datato the receiving apparatus which has issued the transmission request. Atthat time, the transmission apparatus 100 keeps a state where the firstcontent data is able to be transmitted to the receiving apparatus. Thetransmission apparatus 100 further performs control such that, when thenumber of transmissions of the first content data becomes less than thefirst predetermined number, the transmission apparatus 100 permits thefirst content data to be transmitted to the receiving apparatus.

While the number of transmissions of second content data beingtransmitted is equal to or greater than a second predetermined number,the transmission apparatus 100 does not transmit the second content datato the receiving apparatus which has issued the transmission request. Atthat time, the transmission apparatus 100 keeps a state where the secondcontent data is able to be transmitted to the receiving apparatus. Thetransmission apparatus 100 performs control such that, when the numberof transmissions of the second content data becomes less than the secondpredetermined number, the transmission apparatus 100 permits the secondcontent data to be transmitted to the receiving apparatus.

There are several distribution control methods in a case where thereceiving apparatus desires to receive a plurality of mediadistributions at the same time. In a first method, the media whichbecome distributable are distributed sequentially irrespective of thetype of media. The method is illustrated in FIG. 7 as an example of thepresent exemplary embodiment. Ina second method, the transmissionapparatus 100 starts distribution of the media after all the desiredmedia become distributable. In a third method, the distribution isstarted from a distributable media at a time when a specific mediabecomes distributable.

A difference between the second method and the method described withreference to FIG. 7 exists in the timing of starting distribution ofaudio to the receiving apparatus 3. In the second method, the receivingapparatus 3 in FIG. 7 starts distributing video and audio together at atiming when the distribution of video and audio to the receivingapparatus 1 is stopped.

A specific example of the third method may include a case that, if thespecific media is, for example, video, the transmission apparatus 100does not start the distribution of the media before video as thespecific media becomes distributable even when the other media to bereceived together with video become distributable.

The third method may be combined with the first method. For example, ifthe specific media is video and the video is distributable, thetransmission apparatus 100 starts distributing video first and, at atiming when the other media become distributable, the transmissionapparatus 100 starts distributing the other media sequentially.

As described above, in a case where the receiving apparatus, which hasissued the transmission request, requests transmissions of the firstcontent data (e.g., video) constituting the content and the secondcontent data (e.g., the Audio) constituting the content, thetransmission apparatus 100 can conduct the following control. In a casewhere the number of transmissions of the first content data becomes lessthan the first predetermined number and the number of transmissions ofthe second content data becomes less than the second predeterminednumber, the transmission apparatus 100 can permit the first content dataand the second content data to be transmitted to the receivingapparatus. Alternatively, when the number of transmissions of the firstcontent data becomes less than the first predetermined number, thetransmission apparatus 100 permits the first content data to betransmitted to the receiving apparatus, and when the number oftransmissions of the second content data becomes less than the secondpredetermined number, the transmission apparatus 100 permits the secondcontent data to be transmitted to the receiving apparatus.

A method for designating a media substitutable with the specific mediaamong the media of which distribution is requested is described below.FIG. 8 illustrates an example of processing in a case that video codingformats include a Joint Photographic Experts Group (JPEG) format and anH.264 format, and there is provided a receiving apparatus in which mediain the JPEG format and media in the H.264 format are substitutable witheach other.

In FIG. 8, the content in the H.264 format can be distributed up to twosessions. Both of the receiving apparatus 1 and the receiving apparatus2 request the content distribution in H.264 and start to receive thecontent in the H.264 format immediately after requesting thedistribution thereof. Thereafter, the receiving apparatus 3 request thedistribution content in the H.264 or the JPEG format. However, since thereceiving apparatus 1 and the receiving apparatus 2 are receiving thecontent in the H.264 format at the moment, the receiving apparatus 3starts receiving the content in the JPEG format.

When the receiving apparatus 1 requests the disconnection of thesession, the transmission apparatus 100 disconnects the session to thereceiving apparatus 1, stops the distribution of the content in theH.264 format, and switch the format of the content transmitted to thereceiving apparatus 3 from JPEG to H.264.

Switching the format of the content transmitted to the receivingapparatus 3 can be realized such that the receiving apparatus 3transfers the priority order between the substitutable media types tothe transmission apparatus 100. Alternatively, switching the format ofthe content can arbitrarily be performed according to the intention ofthe transmission apparatus 100. In a case where the contents distributedby using the RTSP is shifted, a method such as the ANNOUNCE method is tobe used is described in the RFC2326.

As described above, in a case where the content data to which thetransmission request is issued can be encoded according to a firstcoding method and a second coding method, the following processing canbe performed. While the number of transmissions of the first contentdata encoded according to the first coding method is equal to or greaterthan the first predetermined number, and the number of transmissions ofthe second content data encoded according to the second coding method isequal to or greater than the second predetermined number, thetransmission apparatus 100 does not transmit the first content data orthe second content data. The transmission apparatus 100 keeps a statewhere the first content data and the second content data are able to betransmitted to the receiving apparatus. In a case where the number oftransmissions of the content data encoded according to the first codingmethod becomes less than the first predetermined number, thetransmission apparatus 100 permits the content data encoded according tothe first coding method to be transmitted to the receiving apparatus. Ina case where the number of transmissions of the content data encodedaccording to the second coding method becomes less than the secondpredetermined number, the transmission apparatus 100 permits the contentdata encoded according to the second coding method to be transmitted tothe receiving apparatus.

Another case of switching between the media types of the contentdistributed from the transmission apparatus 100 is described below withreference to FIG. 9. FIG. 9 illustrates another example of theprocessing in a case that video coding formats include the JPEG formatand H.264 format, and there is provided a receiving apparatus in whichmedia in the JPEG format and media in the H.264 format are substitutablewith each other. In FIG. 9, similar to the case in FIG. 8, the contentin the H.264 format can be distributed up to two sessions.

The receiving apparatus 1 requests the distribution in the H.264 formatto the transmission apparatus 100 and receives the content in the H.264format. The receiving apparatus 2 requests the distribution of thecontent in one of the H.264 or the JPEG format as the substitutablemedia and starts receiving the content in the H.264 format.

Then, the receiving apparatus 3 requests the distribution of the contentin the H.264 format. However, at the time, the transmission apparatus100 is distributing the content in the H.264 format to the receivingapparatus 1 and the receiving apparatus 2. Therefore, the transmissionapparatus 100 switches the media type of the content distributed to thereceiving apparatus 2 from H.264 to JPEG, and starts distributing thecontent in the H.264 format to the receiving apparatus 3.

As described above, in a case where the content data to which thetransmission request is issued can be encoded according to the firstcoding method (e.g., H.264) and the second coding method (e.g., JPEG),the following processing can be performed. While transmitting thecontent data encoded according to the first coding method to the firstreceiving apparatus which has issued the transmission request, thetransmission apparatus 100 receives the transmission request of thecontent data encoded according to the first coding method from thesecond receiving apparatus 2. Then, the transmission apparatus 100performs control to permit the content data encoded according to thesecond coding method to be transmitted to the first receiving apparatus.

The example in FIG. 9 illustrates a state that the transmissionapparatus 100 obtains the information about the types of thesubstitutable media for each receiving apparatus, and switches betweenformats of the content that has already been distributing. This canavoid the restriction from the maximum number of distributions by typeof media, and the content can be distributed to a greater number ofreceiving apparatus.

Aspects of the present invention can also be realized by a computer of asystem or apparatus (or devices such as a CPU or MPU) that reads out andexecutes a program recorded on a memory device to perform the functionsof the above-described embodiment (s), and by a method, the steps ofwhich are performed by a computer of a system or apparatus by, forexample, reading out and executing a program recorded on a memory deviceto perform the functions of the above-described embodiment(s). For thispurpose, the program is provided to the computer for example via anetwork or from a recording medium of various types serving as thememory device (e.g., computer-readable medium).

While the present invention has been described with reference toexemplary embodiments, it is to be understood that the invention is notlimited to the disclosed exemplary embodiments. The scope of thefollowing claims is to be accorded the broadest interpretation so as toencompass all modifications, equivalent structures, and functions.

This application claims priority from Japanese Patent Application No.2012-007458 filed Jan. 17, 2012, which is hereby incorporated byreference herein in its entirety.

What is claimed is:
 1. A transmission apparatus for transmitting contentdata to a receiving apparatus via a network, the transmission apparatuscomprising: an establishing unit configured to establish a state wherethe content data is able to be transmitted to the receiving apparatusvia the network; a reception unit configured to receive a transmissionrequest of the content data from the receiving apparatus in theestablished state where the content data is able to be transmitted tothe receiving apparatus; and a control unit configured to performcontrol such that, while a number of transmissions of the content databeing transmitted is equal to or greater than a predetermined number,the control unit does not transmit the content data to the receivingapparatus having issued the transmission request but keeps the statewhere the content data is able to be transmitted to the receivingapparatus and, when the number of transmissions of the content databecomes less than the predetermined number, the control unit permits thecontent data to be transmitted to the receiving apparatus having issuedthe transmission request.
 2. The transmission apparatus according toclaim 1, wherein the control unit performs control such that, while thenumber of transmissions of the content data being transmitted is equalto or greater than the predetermined number, when the number oftransmissions of the content data becomes less than the predeterminednumber within a predetermined period of time after receiving thetransmission request, the control unit permits the content data to betransmitted to the receiving apparatus having issued the transmissionrequest and, while the number of transmissions of the content data beingtransmitted is equal to or greater than the predetermined number, whenthe number of transmissions of the content data does not become lessthan the predetermined number within the predetermined period of timeafter receiving the transmission request, the control unit does nottransmit the content data to the receiving apparatus having issued thetransmission request.
 3. The transmission apparatus according to claim1, wherein the control unit performs control such that, in a case wherethe receiving apparatus having issued the transmission request requeststransmissions of first content data and second content data, the controlunit does not transmit the first content data to the receiving apparatushaving issued the transmission request while the number of transmissionsof the first content data being transmitted is equal to or greater thana first predetermined number, but keeps a state where the first contentdata is able to be transmitted to the receiving apparatus, and thecontrol unit permits the first content data to be transmitted to thereceiving apparatus when the number of transmissions of the firstcontent data becomes less than the first predetermined number, and thecontrol unit does not transmit the second content data to the receivingapparatus having issued the transmission request while the number oftransmissions of the second content data being transmitted is equal toor greater than a second predetermined number, but keeps a state wherethe second content data is able to be transmitted to the receivingapparatus and, when the number of transmissions of the second contentdata becomes less than the second predetermined number, the control unitpermits the second content data to be transmitted to the receivingapparatus.
 4. The transmission apparatus according to claim 1, whereinthe control unit performs control such that, in a case where thereceiving apparatus having issued the transmission request requeststransmissions of first content data and second content data, while thenumber of transmissions of the first content data being transmitted isequal to or greater than a first predetermined number or the number oftransmissions of the second content data being transmitted is equal toor greater than a second predetermined number, the control unit does nottransmit the first content data or the second content data to thereceiving apparatus having issued the transmission request but keeps astate where the first content data and the second content data are ableto be transmitted to the receiving apparatus and, when the number oftransmissions of the first content data becomes less than the firstpredetermined number and the number of transmissions of the secondcontent data becomes less than the second predetermined number, thecontrol unit permits the first content data and the second content datato be transmitted to the receiving apparatus.
 5. The transmissionapparatus according to claim 1, wherein the control unit performscontrol such that, in a case where the receiving apparatus having issuedthe transmission request requests transmissions of first content dataand second content data, while the number of transmissions of the firstcontent data being transmitted is equal to or greater than a firstpredetermined number and the number of transmissions of the secondcontent data being transmitted is equal to or greater than a secondpredetermined number, the control unit does not transmit the firstcontent data or the second content data to the receiving apparatushaving issued the transmission request but keeps a state where the firstcontent data and the second content data are able to be transmitted tothe receiving apparatus and, when the number of transmissions of thefirst content data becomes less than the first predetermined number, thecontrol unit permits the first content data to be transmitted to thereceiving apparatus and, when the number of transmissions of the secondcontent data becomes less than the second predetermined number, thecontrol unit permits the second content data to be transmitted to thereceiving apparatus.
 6. The transmission apparatus according to claim 1,wherein the control unit performs control such that, in a case where thecontent data to which the transmission request is issued is able to beencoded according to a first coding method and a second coding method,while the number of transmissions of first content data encodedaccording to the first coding method is equal to or greater than a firstpredetermined number and the number of transmissions of second contentdata encoded according to the second coding method is equal to orgreater than a second predetermined number, the control unit does nottransmit the first content data or the second content data to thereceiving apparatus having issued the transmission request but keeps astate where the first content data and the second content data are ableto be transmitted to the receiving apparatus and, when the number oftransmissions of the first content data encoded according to the firstcoding method becomes less than the first predetermined number, thecontrol unit permits the first content data to be transmitted to thereceiving apparatus and, when the number of transmissions of the secondcontent data encoded according to the second coding method becomes lessthan the second predetermined number, the control unit permits thesecond content data to be transmitted to the receiving apparatus.
 7. Thetransmission apparatus according to claim 1, wherein the control unitperforms control such that, in a case where the content data to whichthe transmission request is issued is able to be encoded according to afirst coding method and a second coding method, while the number oftransmissions of the content data encoded according to the first codingmethod to a first receiving apparatus having issued the transmissionrequest is equal to or greater than the predetermined number, if atransmission request of the content data encoded according to the firstcoding method is received from a second receiving apparatus, the controlunit permits the content data encoded according to the second codingmethod to be transmitted to the first receiving apparatus.
 8. Thetransmission apparatus according to claim 1, further comprising: astoring unit configured to store a priority order of a plurality ofreceiving apparatuses; wherein the control unit performs control suchthat, while the number of transmissions of the content data beingtransmitted is equal to or greater than the predetermined number, thecontrol unit does not transmit the content data to the plurality ofreceiving apparatuses having issued the transmission requests but keepsthe state where the content data is able to transmitted to the pluralityof receiving apparatuses and, when the number of transmissions of thecontent data becomes less than the predetermined number, the controlunit permits the content data to be transmitted to the plurality ofreceiving apparatuses according to the priority order.
 9. Thetransmission apparatus according to claim 1, wherein the control unitperforms control such that a transmission permission notificationindicating that the transmission of the content data is made availableis transmitted to the receiving apparatus to which the control unitpermits the content data to be transmitted.
 10. The transmissionapparatus according to claim 1, wherein the control unit performscontrol such that, a transmission permission notification indicatingthat the transmission of the content data is made available istransmitted to the receiving apparatus to which the control unit permitsthe content data to be transmitted and, if no transmission request isreceived from a third receiving apparatus within a predetermined periodof time after the transmission permission notification is transmitted tothe third receiving apparatus, the transmission permission notificationis transmitted to a fourth receiving apparatus different from the thirdreceiving apparatus.
 11. The transmission apparatus according to claim1, wherein the control unit performs control to determine thepredetermined number based on a communication band of the network and abit rate of the content data to which the transmission request has beenissued.
 12. A method for transmitting content data to a receivingapparatus via a network, the method comprising: establishing a statewhere the content data is able to be transmitted to the receivingapparatus via the network; receiving a transmission request of thecontent data from the receiving apparatus in the established state wherethe content data is able to be transmitted to the receiving apparatusvia the network; and controlling such that, while a number oftransmissions of the content data being transmitted is equal to orgreater than a predetermined number, the content data is not transmittedto the receiving apparatus having issued the transmission request butthe state where the content data is able to be transmitted to thereceiving apparatus is kept and, when the number of transmissions of thecontent data becomes less than the predetermined number, the contentdata is permitted to be transmitted to the receiving apparatus havingissued the transmission request.
 13. The method according to claim 12,further comprising: controlling such that, in a case where the receivingapparatus having issued the transmission request requests transmissionsof first content data and second content data, while the number oftransmissions of the first content data being transmitted is equal to orgreater than a first predetermined number, the first content data is nottransmitted to the receiving apparatus having issued the transmissionrequest but a state where the first content data is able to betransmitted to the receiving apparatus is kept, and the first contentdata is permitted to be transmitted to the receiving apparatus when thenumber of transmissions of the first content data becomes less than thefirst predetermined number, and, while the number of transmissions ofthe second content data being transmitted is equal to or greater than asecond predetermined number, the second content data is not transmittedto the receiving apparatus having issued the transmission request but astate where the second content data is able to be transmitted to thereceiving apparatus is kept, and the second content data is permitted tobe transmitted to the receiving apparatus when the number oftransmissions of the second content data becomes less than the secondpredetermined number.
 14. A non-transitory computer-readable storagemedium storing computer-executable instructions that cause a computerfor transmitting content data to a receiving apparatus via a network toexecute a method, the method comprising: establishing a state where thecontent data is able to transmitted to the receiving apparatus via thenetwork; receiving a transmission request of the content data from thereceiving apparatus in the established state where the content data isable to be transmitted to the receiving apparatus via the network;controlling such that, while a number of transmissions of the contentdata being transmitted is equal to or greater than a predeterminednumber, the content data is not transmitted to the receiving apparatushaving issued the transmission request but a state where the contentdata is able to be streamed to the receiving apparatus is kept and, whenthe number of transmissions of the content data becomes less than thepredetermined number, the content data is permitted to be transmitted tothe receiving apparatus having issued the transmission request.
 15. Thenon-transitory computer-readable storage medium according to claim 14,the method further comprising: controlling such that, in a case wherethe receiving apparatus having issued the transmission request requeststransmissions of first content data and second content data, while thenumber of transmissions of the first content data being transmitted isequal to or greater than a first predetermined number, the first contentdata is not transmitted to the receiving apparatus having issued thetransmission request but a state where the first content data is able tobe transmitted to the receiving apparatus is kept, and the first contentdata is permitted to be transmitted to the receiving apparatus when thenumber of transmissions of the first content data becomes less than thefirst predetermined number, and, while the number of transmissions ofthe second content data being transmitted is equal to or greater than asecond predetermined number, the second content data is not transmittedto the receiving apparatus having issued the transmission request but astate where the second content data is able to be transmitted to thereceiving apparatus is kept, and the second content data is permitted tobe transmitted to the receiving apparatus when the number oftransmissions of the second content data becomes less than the secondpredetermined number.